#pragma once

// 网络通信的抽象类，任何需要进行收发消息的模块，都可以实现该类

class net_connection
{
public:
    net_connection() {}
    //发送消息的接口
    virtual int send_message(const char *data, int datalen, int msgid) = 0;

    // 提供一个获取当前fd的函数
    virtual int get_fd()=0;

    // 开发者可以通过该参数传递一些动态的自定义参数
    void* param;

};

//创建链接/销毁链接 要触发的 回调函数类型
typedef void (*conn_callback)(net_connection *conn, void *args);



